import { DynamicModule, Module } from "@nestjs/common";
@Module({
    providers: [
        {
            provide:'PREFIX',
            useValue: 'prefix'
        }
    ],
    exports: ['PREFIX']
})
export class DynamicConfigModule {
    static forRoot(apikey):DynamicModule|Promise<DynamicModule> {
        const providers = [
            {
                provide: 'CONFIG',
                useValue: {
                    apiKey: apikey
                }
            }
        ]
        return new Promise((resolve)=>{
            resolve({
                module: DynamicConfigModule,
                providers,
                exports: providers.map(provider => provider instanceof Function ? provider:provider.provide)
            })
        })
        // return {
        //     module: DynamicConfigModule,
        //     providers,
        //     exports: providers.map(provider => provider instanceof Function ? provider:provider.provide)
        // }
    }
}